═══ 1. PMFLCOMP PM File Compare Utility ═══ Version 1.41 PMFLCOMP is a general file comparison utility. It runs under OS/2 2.0 or higher and requires 6 megabytes of RAM. OS/2 is a registered trademark of the International Business Machines Corporation. ═══ 1.1. American Coders Ltd. ═══ American Coders, LTD. Post Office Box 97462 Raleigh, NC 27624 (919) 846-2014 Compuserve ID: 74150,2370 Copyright 1993-94 American Coders LTD Raleigh NC USA Programming Solutions For Your Business ═══ 1.2. How To Execute ═══ The program does not have an automatic installation routine. But if you do the following steps you can make the program callable from the Desktop or folder of your choice. You will have to unzip the files into an existing directory. Set it up in one of your folders, such as a folder where your productivity, utility or programming tools are located. Once done you can use the Drives template in the OS2 Systems folder. From there specify the location to display the location of the executable file. Drag the PMFLCOMP icon to the folder of your choice. Or use the program template in the Template folder and do the same. If you place the executable in a directory specified in the PATH paramater you can, from the command line, type PMFLCOMP at the prompt. ═══ 1.3. Version Changes. ═══ Version 1.41 Jan., 1994. Made ascii and hex compares threads. Version 1.31 Nov., 1993 - Not released. Version 1.21 Sep., 1993. Added hex and checksum compare. Version 1.11 May, 1993 Initial release. ═══ 2. What PMFLCOMP Is ═══ PM File Compare reads and compares the contents of two files. When there is a mismatch, the mismatched data is shown in either the Comparison List Box or Comparison Textual Container. As an alternative, use the checksum function for quick compares. ═══ 2.1. The Main Window ═══ The main window is made up of 4 pulldowns, File, Type, Options and Help; two entry fields and either the comparison list box or container. Refer to Options. ═══ 2.2. File Pulldown ═══ The File pulldown contains 7 choices: o Old File o New File o Compare o Stop o Print o Refresh o Exit ═══ 2.2.1. Old File Choice ═══ When you select the Old File choice you will get the standard PM File Dialog box. Use this dialog box to select the older of the two files you wish to compare against. There is an alternative method, refer to Old File Entry Field. The program does not verify that the old file is older than the new file. It assumes nothing about file dates. Old/New compares run as if you specified them chronologically correct. ═══ 2.2.2. New File Choice ═══ When you select the New File choice you will get the standard PM File Dialog box. Use this dialog box to select the newer of the two files you wish to compare against. There is an alternative method, refer to New File Entry Field. ═══ 2.2.3. Compare Choice ═══ When you select the Compare choice you start the comparison function. The compare function will not start until both the Old File and New File have been selected. The type of comparison depends on which comparison function you choose ASCII or Hexadecimal. ═══ 2.2.4. Stop Choice ═══ When you select the Compare choice you may need to STOP the comparison function. The compare function is stoppable only for the ascii and hex compare threads. When Stop is chosen, any comparison information generated will remain in the compare region. This information can be removed by selecting the Refresh choice. ═══ 2.2.5. Print Choice ═══ Select this to print the contents of the comparison listbox. ═══ 2.2.6. Refresh Choice ═══ Select this to erase the contents from either the comparison listbox or container. ═══ 2.2.7. Exit Choice ═══ Select this to exit the program. ═══ 2.3. Type Pulldown ═══ o ASCII (Text) o Hexadecimal o Checksum ═══ 2.3.1. ASCII Comparison ═══ This will make the comparison process display a line by line comparison of the two files. This is the default action. The comparison function attempts to find differences and also similarities between the two files. When the program finds a mismatched line it will look ahead through both files to find a matching line. At each mismatch, the file with the lowest matching line difference is considered to be the primary file. The program will display all of the lines of the secondary file until the lines realign as a match. This process continues until both files are completely read. ═══ 2.3.2. Hexadecimal Comparison ═══ This compares the two files on a byte by byte basis. Mismatched data is shown in 16 byte segments. Unlike the ASCII compare, which tries to find matching data to resynch the comparison process, hex compare never looks ahead to realigns the matching process. Because of this a lot of output can be generated. ═══ 2.3.3. Checksum Comparison ═══ Use this for quicky compares. The dialog box shows a calcuated checksum of the files. The closer the two checksum values the more likely the files are similar. ═══ 2.4. Option Pulldown ═══ o ASCII o Hexadecimal o Checksum ═══ 2.5. Ascii Comparison Choices ═══ These options work only when doing an ASCII compare. o Ignore Leading Spaces o Ignore Trailing Spaces o Ignore Blank Lines o Translate Tabs ═══ 2.5.1. Ignore Leading Spaces ═══ Tells the compare function to start comparing at the first non space character for each line. ═══ 2.5.2. Ignore Trailing Spaces ═══ Tells the compare function to stop comparing at the last non space character for each line. ═══ 2.5.3. Ignore Blank Lines ═══ Tells the compare function not to compare a line if it is all spaces or contains no data at all. ═══ 2.5.4. Translate Tabs ═══ Use this option for two purposes. When you have the habit of sometimes using a tab character and sometimes you don't. When your favorite editor compresses text files by changing a bunch of spaces into the tab character. This is real handy when used with either the Ignore Space option. ═══ 2.6. Hex Choices ═══ These options work only when doing a Hexadecimal compare. o Show All Data ═══ 2.6.1. Show All Data ═══ Because the hexadecimal compare can generate a log of output the program is limited to show only parts of the files that do not match. So if you wish to see a complete hex dump of both files turn this option on. ═══ 2.7. Font Choices ═══ These options starts up the PM Standard Font Dialog so that you can change the way characters are displayed for the current comparison choice. ═══ 2.8. Help Pulldown ═══ For further information refer to documentation. ═══ 2.9. Within The Window ═══ Inside the window there are two entry fields and one list box. ═══ 2.10. Old File Entry Field ═══ Enter the Old File name to select the older of the two files you wish to compare against. There is an alternative method, refer to Old File Choice. ═══ 2.11. New File Entry Field ═══ Enter the New File name to select the new of the two files you wish to compare against. There is an alternative method, refer to New File Choice. ═══ 2.12. Compare List Box ═══ The list box shows the differences between the Old and New files. If a line is found in the Old File that has no matching New File line it shows up in the listbox as Del(#xxxx) yyyyy where xxxx is the line number in the Old File and yyyyy is the mismatching text. Similarly, if a line is found in the New File that has no matching Old File line it shows up in the listbox as Ins(#xxxx) yyyyy where xxxx is the line number in the New File and yyyyy is the mismatching text. ═══ 2.13. Compare Textual Container ═══ The container, which looks like 5 list boxes shows the differences between the Old and New files from a Hexadecimal view. Data is shown in 16 byte chunks. If a byte is found in the Old File that does not match a byte at the same location in the New File the 16 bytes are shown. If all 16 bytes do match the data is not shown unless the Show All Data was selected. Each 16 byte group shows up in the container as uuuu vvvvvvvv wwwwww xxxxxxxx yyyyyyyy o where uuuu is the 16 byte offset within each file. o vvvvvv is the 16 bytes of hex data from the old file (doubled up). o wwwwww is the 16 bytes in character format of the old file. o xxxxxx is the 16 bytes of hex data from the new file (doubled up). o yyyyyy is the 16 bytes in character format of the new file. ═══ 3. What PMFLCOMP Isn't ═══ PM File Compare will compare any two files. Its main objective is to compare ASCII text file. But it will also present to you a hexadecimal comparsion of two files when selected. The hexadecimal compare genereates a lot of output. So much so - that it may not be meaningful for plain ascii text files. ═══ 3.1. Suggestions and Bugs. ═══ Please call or write to us at our address with suggestions or to report bugs. You can reach us through CompuServe by contacting Joe McVerry 74150,2370 ═══ 4. Shareware ═══ DEFINITION OF SHAREWARE Shareware distribution gives users a chance to try software before buying it. If you try a Shareware program and continue using it, you are expected to register. Individual programs differ on details -- some request registration while others require it, some specify a maximum trial period. With registration, you get anything from the simple right to continue using the software to an updated program with printed manual. ═══ 4.1. Copyright ═══ Copyright laws apply to both Shareware and commercial software, and the copyright holder retains all rights, with a few specific exceptions as stated below. Shareware authors are accomplished programmers, just like commercial authors, and the programs are of comparable quality. (In both cases, there are good programs and bad ones!) The main difference is in the method of distribution. The author specifically grants the right to copy and distribute the software, either to all and sundry or to a specific group. For example, some authors require written permission before a commercial disk vendor may copy their Shareware. ═══ 4.2. Distribution. ═══ Shareware is a distribution method, not a type of software. You should find software that suits your needs and pocketbook, whether it's commercial or Shareware. The Shareware system makes fitting your needs easier, because you can try before you buy. And because the overhead is low, prices are low also. Shareware has the ultimate money-back guarantee -- if you don't use the product, you don't pay for it. ═══ 5. Disclaimer ═══ DISCLAIMER - AGREEMENT Users of PM File Compare must accept this disclaimer of warranty: "PM File Compare is supplied as is. The author disclaims all warranties, expressed or implied, including, without limitation, the warranties of merchantability and of fitness for any purpose. The author assumes no liability for damages, direct or consequential, which may result from the use of PM File Compare." ═══ 6. Sharing PMFLCOMP ═══ PM File Compare is a "shareware program" and is provided at no charge to the user for evaluation. Feel free to share it with your friends, but please do not give it away altered or as part of another system. The essence of "user-supported" software is to provide personal computer users with quality software without high prices, and yet to provide incentive for programmers to continue to develop new products. If you find this program useful and find that you are using PM File Compare and continue to use PM File Compare after a reasonable trial period, you must make a registration payment of $45.00 to American Coders, Ltd. The $45.00 registration fee will license one copy for use on any one computer at any one time. You must treat this software just like a book. An example is that this software may be used by any number of people and may be freely moved from one computer location to another, so long as there is no possibility of it being used at one location while it's being used at another. Just as a book cannot be read by two different persons at the same time. ═══ 6.1. Commercial Users ═══ Commercial users of PM File Compare must register and pay for their copies of PM File Compare within 30 days of first use or their license is withdrawn. Site-License arrangements may be made by contacting American Coders, Ltd. ═══ 6.2. Distributing ═══ Anyone distributing PM File Compare for any kind of remuneration must first contact American Coders, Ltd. at our address. below for authorization. This authorization will be automatically granted to distributors recognized by the (ASP) as adhering to its guidelines for shareware distributors, and such distributors may begin offering PM File Compare immediately (However American Coders, Ltd. must still be advised so that the distributor can be kept up-to-date with the latest version of PM File Compare.). ═══ 6.3. Pass Along ═══ You are encouraged to pass a copy of PM File Compare along to your friends for evaluation. Please encourage them to register their copy if they find that they can use it. All registered users will receive a copy of the latest version of the PM File Compare system. ═══ 7. Ombudsman Statement ═══ This program is produced by American Coders, LTD, a member of the Association of Shareware Professionals (ASP). ASP wants to make sure that the shareware principle works for you. If you are unable to resolve a shareware-related problem with an ASP member by contacting the member directly, ASP may be able to help. The ASP Ombudsman can help you resolve a dispute or problem with an ASP member, but does not provide technical support for members' products. Please write to the ASP Ombudsman at 545 Grover Road, Muskegon, MI 49442-9427 USA, FAX 616-788-2765 or send a CompuServe message via CompuServe Mail to ASP Ombudsman 70007,3536. ═══ 8. What Else American Coders Can Do For You ═══ Programming PM applications is our speciality. We also do mainframe programming. With an emphasis on programming CICS applications that communicate to DOS and OS2 applications via APPC.